Modern computer systems often have many devices linked together by a common bus. These devices use the bus to establish communication with each other and transfer information between one another. A timeout is an action taken by a bus system to free the bus for use if one or more devices maintains control of the bus for too long a period of time. This can happen, for example, if the device using the bus stalls and does not remove itself from the bus.
A method is needed for forcing off of a bus those devices which have maintained control of the bus for too long a period of time. One such method of timing out has been to have each device which has taken control of the bus remove itself from the bus when it has maintained control for too long a period of time. However, if the timer on this device malfunctions so that the device keeps maintaining control of the bus, the bus will be effectively locked up; since no other device on the bus forces the stalled device off of the bus.
In some prior art arrangements, a reset causes the state machines which drive and control the bus of all the devices connected to the bus to be cleared. However, this clearing is a drastic measure and should be avoided to the greatest extent possible since the state machines must be brought back to the condition they were in when the reset signal was asserted.